package com.tz.service;

import com.tz.entity.*;
import com.tz.util.PageBean;

import java.util.List;

/**
 * 本接口用来处理考评管理
 * @author Alex
 * @date 17-12-27
 */
public interface ResearchService {
    /**
     * 添加一份调查卷
     * @param research 一份调查卷
     * 考评列表中的添加一个调查
     */
    void addResearch(Research research,ResearchTemplate researchTemplate);
    /**
     * 修改调查
     * 主要用于动态的修改:
     * 总份数,有效份数,平均分
     */
    void alterResearch(Research research);
    /**
     * 显示包含的调查明细
     * 用于显示主页面
     */
    List<Research> findAllResearch(Long researchid);
    /**
     * 通过id返回对应的调查
     * @param researchid
     * @return
     */
     Research findById(Long researchid);
    /**
     * 删除调查
     * 注意要关联删除调查明细
     * 如果是唯一引用模板的把模板状态改为禁用
     */
    void removeResearch(Long id);
    /**
     * 分页显示所有的
     * 根据字符串模糊查询
     * 实现搜索框的功能
     * status
     * 0 未结束
     * 1 未审核
     * 2 已审核
     */
    PageBean<Research> findResearchsByPage(Integer pageNow, Integer pageSize,int state,String string);
    /**
     * 通过research找到模板id
     */
    Long getTempIDbyResearchID(Long id);

}
